// 获取区域名称
export function getRegionName(regionCode) {
  const regionNames = {
    'taipei': '台北地区',
    'taichung': '台中地区',
    'tainan': '台南地区',
    'all': '全台湾'
  }
  return regionNames[regionCode] || regionCode
}

// 获取设施名称
export function getFacilityName(facilityCode) {
  const facilityNames = {
    'runways': '跑道',
    'parking-aprons': '停机坪',
    'oil-tanks': '油库',
    'ammunition-depots': '弹药库',
    'all': '全部设施'
  }
  return facilityNames[facilityCode] || facilityCode
}

// 获取区域颜色
export function getRegionColor(region) {
  switch (region) {
    case 'taipei':
      return '#E53935'  // 红色
    case 'taichung':
      return '#43A047'  // 绿色
    case 'tainan':
      return '#FB8C00'  // 橙色
    default:
      return '#1E88E5'  // 蓝色
  }
}

// 获取标签类型
export function getTagType(value) {
  if (value > 80) return 'success'
  if (value > 50) return 'warning'
  if (value > 20) return 'info'
  return 'danger'
}

// 格式化日期
export function formatDate(date) {
  const d = new Date(date)
  const year = d.getFullYear()
  const month = String(d.getMonth() + 1).padStart(2, '0')
  const day = String(d.getDate()).padStart(2, '0')
  return `${year}-${month}-${day}`
}

// 防抖函数
export function debounce(func, wait) {
  let timeout
  return function executedFunction(...args) {
    const later = () => {
      clearTimeout(timeout)
      func(...args)
    }
    clearTimeout(timeout)
    timeout = setTimeout(later, wait)
  }
}

// 节流函数
export function throttle(func, limit) {
  let inThrottle
  return function executedFunction(...args) {
    if (!inThrottle) {
      func(...args)
      inThrottle = true
      setTimeout(() => inThrottle = false, limit)
    }
  }
}

// 深拷贝函数
export function deepClone(obj) {
  if (obj === null || typeof obj !== 'object') return obj
  if (obj instanceof Date) return new Date(obj)
  if (obj instanceof Array) return obj.map(item => deepClone(item))
  if (obj instanceof Object) {
    return Object.keys(obj).reduce((acc, key) => {
      acc[key] = deepClone(obj[key])
      return acc
    }, {})
  }
} 